Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- Oepn source



  Greedy and Nongreedy Matching in a Regular Expression

By default, pattern matching is greedy, which means that the matcher returns the longest match possible. For example, applying the pattern A.*c to AbcAbcA matches AbcAbc rather than the shorter Abc. To do nongreedy matching, a question mark must be added to the quantifier. For example, the pattern A.*?c will find the shortest match possible. COPY // Greedy quantifiers String match = find("A.*c", "AbcAbc"); // AbcAbc match = find("A.+", "AbcAbc"); // AbcAbc // Nongreedy quantifier...

   Regular expression,Pattern match,Greedy,     2011-08-09 12:42:28

  Testing is not a Feature

I pointed out to someone at work today that PyDev 2.5.0 now offers really cool TDD support. I’m not a huge TDD proponent or anything, but this stirred up a discussion. This guy, let’s call him John, said that â€œTDD may shorten the time it takes to develop a feature, but sometimes a feature is so urgent we may want to deliver it as quickly as possible and test it later”.Sentences like that make me weep. I tried to explain that without testing, the...

   Testing,Feature,Software testing     2012-04-24 06:30:09

  Build your own internet search engine - Part 2

After having started to build my own internet search engine as described in a previous blog post, I now have read some papers and books about web search engine architecture and information retrieval to complete my hobby project. Here is a list of papers and books that I highly recommend to anybody who is interested in this topic: 1. Google: data structures and algorithms by Petteri Huuhka 2. The Anatomy of a Large-Scale Hypertextual Web Search Engine by the Google founde...

   Search engine,Paper,Database,Data structure     2011-12-22 08:25:59

  Why does it take Task Manager longer to appear when you start it from the Ctrl+Alt+Del dialog?

Amit was curious why it takes longer for Task Manager to appear when you start it from the Ctrl+Alt+Del dialog compared to launching it from the taskbar. Well, you can see the reason right there on the screen: You're launching it the long way around. If you launch Task Manager from the taskbar, Explorer just launches taskmgr.exe via the usual Create­Process mechanism, and Task Manager launches under the same credentials on the same desktop. On the other hand, when you use the secure ...

   Windows,Task manager,Start time,Ctrl+Alt+Del     2012-02-02 07:06:56

  Learning to Eat Well and Stay Healthy

Back in mid-2006, I documented my fairly dramatic weight loss in a series of blog postings. I went from a high of 224 pounds to a low of 164, which made for a total loss of 60 pounds (I’m about 6 feet tall). It’s interesting to go back and re-read what I wrote back then: Diet Tips or How To Lose Weight with a Spreadsheet and a Web SiteThe Diet Plan and The Three HabitsThe Diet SpreadsheetDiet Tips: How To Eat Less Fast forward to January of 2011, and I had gained back about h...

   Healthy,Engineer,Eat well     2012-01-03 10:53:43

  Gmail supports 10 GB attachment after integrating with Google Drive

Google today announced Gmail allows users to send attachment up to 10GB after integrating with Google Drive, the attachment size can be 400 times larger than traditional mail attachment size.Google also added another feature recently, it will pop up a separate window when writing new email. The integration of Gmail with Google Drive will introduce one Google Drive button at the bottom of the popup window, as a solution for sending large attachment.At the same time, because the attachment will b...

   Google Drive, Gmail,SkyDrive,attachment     2012-11-28 11:12:56

  this in JavaScript

this is a keyword in JavaScript. It refers to an internal object created automatically when a function executes, it can only be used in a function. For example:        function test(){     this.x = 1;   }The this keyword will change when a function is called in different situations. However, the general rule is : this refers to the object which calls the function.Next we discuss the use of this in 4 different situatio...

   this,keyword,use,JavaScript     2012-05-05 12:47:37

  What will happen after Baidu acquires PPS?

One month ago there was some news that Ai Qiyi would acquire PPS through Baidu Now this has been confirmed, Baidu will spend $400,000,000 on acquiring Shanghai Public Source Network Co., Ltd. (PPS). After completion of the acquisition, Ai Qiyi will likely change the overall content and production line of PPS so that they can complement each other's shortages. Many people are optimistic about this merger, Ai Qiyi can complement its shortage on PC side and PPS can also get more copyrighted film an...

   Ai Qiyi,Sohu,Youku,PPS,acquisition     2013-04-26 22:53:12

  Ubuntu and GNOME jump the shark

I upgraded to Ubuntu 11.04 a week or so back in order to get a more recent version of SCons. 11.04 dropped me into the new “Unity” GNOME interface. There may be people in the world for whom Unity is a good idea, but none of them are me. The look is garish and ugly, and it takes twice as many clicks as it did before to get to an application through their supposedly “friendly” interface as it did in GNOME Classic. No, dammit, I do not want to text-search my applic...

   Ubuntu,GNOME,Open source,Unity     2011-10-17 11:19:00

  How to write your own DSL in Ruby

DSL(Domain Specific Language) is a language defined to fulfill some domain specific requirements to ease people's work. It can be used to define attributes and actions of a domain easily and cleanly. And it is often created based on some common observations or micro patterns of some domain. In Ruby world, there are quite a few places people can find DSL. For example, Ruby itself, Chef recipes. To create a class in Ruby, the traditional OOP way would look like. class User @name = nil @email =...

   RUBY,DSL,TUTORIAL     2017-03-04 09:40:34